#include <bits/stdc++.h>
using namespace std;

int main() {
    int n;
    cin >> n;
    string str;
    cin >> str;

    unordered_map<char, int> m;
    int maxcount = 0;
    char maxChar = 'a';
    
    for (auto &ch : str) {
        m[ch]++;
    }
    
    for (auto &[ch, count] : m) {
        if (count > maxcount) {
            maxcount = count;
            maxChar = ch;
        }
    }
    
    if (maxcount > (n + 1) / 2) {
        cout << "no" << endl;
        return 0;
    }
    
    cout << "yes" << endl;
    
    // 创建结果字符串
    string result(n, ' ');
    int index = 0;
    
    // 先放置出现次数最多的字符
    while (maxcount--) {
        result[index] = maxChar;
        index += 2;
    }
    
    // 处理剩下的字符
    for (auto &[ch, count] : m) {
        if (ch != maxChar) {
            int cnt = count;
            while (cnt--) {
                if (index >= n) index = 1;
                result[index] = ch;
                index += 2;
            }
        }
    }
    
    cout << result << endl;
    return 0;
}